package models_main

import (
	"fmt"
	"longmen/server/pkg/db/mysql/models"
	"time"
)

type Order struct {
	Id          int        `json:"id" gorm:"primaryKey;autoIncrement"`
	Uid         int        `json:"uid"`          //int(10) DEFAULT NULL,
	OrderNo     string     `json:"order_no"`     //varchar(255) DEFAULT NULL COMMENT '商户订单号',
	Type        int        `json:"type"`         //int(1) DEFAULT '0' COMMENT '0-购买金币 1-开通贵族 2-购买礼物 3-购买克拉',
	VipLevel    int        `json:"vip_level"`    //int(255) DEFAULT '0' COMMENT '购买vip等级，type=1时有效',
	Amount      float64    `json:"amount"`       //decimal(10,2) DEFAULT '0.00' COMMENT '应付金额',
	PayAmount   float64    `json:"pay_amount"`   //decimal(10,2) DEFAULT '0.00' COMMENT '实付金额',
	Gold        int        `json:"gold"`         //int(10) DEFAULT '0' COMMENT '购买金币',
	GoldAdded   int        `json:"gold_added"`   //int(10) DEFAULT '0' COMMENT '额外赠送金币',
	OutTradeNo  string     `json:"out_trade_no"` //varchar(255) DEFAULT NULL COMMENT '外部订单号',
	PayChannel  int        `json:"pay_channel"`  //int(1) DEFAULT NULL COMMENT '支付方式 1-微信 2-支付宝 3-苹果支付 4-其他 5-人工',
	CreateTime  time.Time  `json:"create_time"`  //datetime DEFAULT NULL COMMENT '下单时间',
	PayTime     *time.Time `json:"pay_time"`     //datetime DEFAULT NULL COMMENT '付款时间',
	PayStatus   int        `json:"pay_status"`   //int(1) DEFAULT '0' COMMENT '0-等待支付 1-支付成功 2-支付取消 3-支付失败',
	ApiId       int        `json:"api_id"`       //int(11) DEFAULT NULL COMMENT '支付API id， 0-原力支付；1-联速支付',
	Note        string     `json:"note"`         //text COMMENT '備註',
	IsManual    int        `json:"is_manual"`    //int(1) DEFAULT '0' COMMENT '是否手动上分',
	UpdateTime  time.Time  `json:"update_time"`  //datetime DEFAULT NULL
	ProcessNote string     `json:"process_note"` //text COMMENT '系统备注';
}

func (Order) TableName() string {
	return fmt.Sprintf("%sorder", models.Prefix)
}
